/**
 * @title: DynaSqlProvider.java
 * @package com.wehealth.weiyu.common.data.mybatis
 * @description: TODO
 * @author hushsh
 * @date 2016年12月30日下午4:59:00
 * @version V1.0
 */

package com.apiserver.data.mybatis.sqlProvider;


import com.apiserver.data.mybatis.model.EntityTable;
import com.apiserver.data.mybatis.util.EntityUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.jdbc.SQL;

/**
 * @Author feizhou
 * @Description 生成mybatis动态sql
 * @Date 下午 2:33 2019/10/13 0013
 * @Param
 * @return
 **/
@Slf4j
public class InsProvider extends Provider {

    /**
     * @param
     * @return
     * @description 只添加有值的字段
     * @author hushsh
     * @date 2017年1月3日上午10:42:07
     */
    public <M> String insert(final M m) {
        EntityTable entity = EntityUtil.getEntityTable(m);

        SQL sql = new SQL().INSERT_INTO(entity.getTableName());


        sql = getInSertSql(entity, m, sql);

        if (sql == null) {
            return null;
        }

        log.debug(">>>>sql:   ", sql.toString());
        System.out.println(">>>>sql:   " + sql.toString());
        return sql.toString();
    }


}
